package in.srain.cube.util;

import android.content.Context;
import android.os.Bundle;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;

public interface DataTrack {

    void onApplicationCreate(String channel, Context context);

    void logEvent(@NonNull String name, Bundle properties);

    void setUserId(String uid);

    void setUserProperty(@NonNull String property, @Nullable String value);

    void setSuperProperty(@NonNull String property, @Nullable String value);

    <T> T getABTestValue(@NonNull String property,@Nullable T t);

    String getDeviceId(String platform);

    void flushLogEvent();
}
